DSynchronize (By Dimio)
~~~~~~~~~~~~~~~~~~~~~~~

La versione aggiornata si trova ai seguenti Link:

Home: "http://dimio.altervista.org/"



DESCRIZIONE
~~~~~~~~~~~

DSynchronize  un programma (Freeware) che permette di sincronizzare due o pi directory in una rete locale.
Anche la sincronizzazione FTP  supportata, ma si tratta di una funzione sperimentale.

Nella codifica del programma si  cercato di creare un algoritmo ultra-leggero, sia in termini di RAM che di CPU, in modo da non influire sulle prestazioni della macchina.

Grazie al suo particolare algoritmo  infatti possibile sincronizzare directory anche enormi senza che ci vada ad appesantirne il funzionamento. Durante una sincronizzazione  quindi possibile continuare ad usare il PC come se niente fosse.

Il programma confronta ogni directory "Source" con la rispettiva "Destination", indi modifica "Destination" (aggiungendo, aggiornando o cancellando files e sottodirectory) in maniera tale da renderla identica a "Source". 
Supporta sia la sincronizzazione temporizzata ( possibile specificare nei dettagli il giorno e l'orario) che quella in Real-Time.
Supporta filtri multipli (separati da ";") tipo *.exe;*.txt etc.
Quando si specificano i percorsi  possibile utilizzare Variabili d'ambiente (%WINDIR%, %USERPROFILE% etc.).

DSynchronize pu essere avviato come servizio, in maniera tale da girare anche se sul PC non vi  nessun utente loggato.



SISTEMI SUPPORTATI
~~~~~~~~~~~~~~~~~~

Windows 10
Windows 8
Windows Seven
Windows Vista
Windows 2003
Windows XP
Windows 2000
Windows NT4 con SP6a e IE4 o superiori.



SINCRONIZZAZIONE SU FTP
~~~~~~~~~~~~~~~~~~~~~~~

DSynchronize permette di sincronizzare i dati verso FTP (e in teoria anche da FTP verso un percorso di rete).
Non  possibile sincronizzare tra di loro due FTP n usare la sincronizzazione in tempo reale.
Il path FTP deve essere specificato con gli standard Microsoft, per cui  necessario utilizzare formati del tipo:

ftp://ftpserver.com  (Ftp con login anonimo e directory di default).

ftp://User:Password@ftpserver.com/pictures  (Ftp con login specifico e indicazione della directory di lavoro).

ftp://User:Password@ftpserver.com:1973/pictures  (Ftp con login specifico e indicazione della porta e della directory di lavoro).



OPZIONI
~~~~~~~

"Save on exit"
Serve per salvare tutti i settaggi, compresi i percorsi delle directory da sincronizzare.

"Antifragmentation"
Riduce la frammentazione del disco: i files che devono essere sostituiti vengono prima cancellati in blocco, e poi sostituiti con le nuove copie (insomma, prima si fanno i buchi, e poi si riempiono).
Con questa opzione attiva si perde la distinzione tra files sostituiti e files aggiunti. (i files sostituiti figureranno tra i files aggiunti).

"Set/Enable timer"
Effettua automaticamente la sincronizzazione ogni tot minuti/ore o, a scelta, ogni giorno all'orario specificato,  anche possibile selezionare o escludre con precisione uno o pi giorni della settimana o del mese.

"Verify Byte to Byte"
Opzione da usare solo nel caso i timings dei file da sincronizzare siano stati danneggiati e non costituiscano pi una guida valida per la sincronizzazione. In questo caso attivare questa opzione consente di effettuare una verifica binaria di tutti i file che hanno gli stessi timings. In pratica se si spunta questa opzione, anche se i timings, gli attributi e le dimensioni dicono che due file sono identici, viene comunque effettuato anche un confronto binario.
Questa opzione rende lentissima la sincronizzazione, anche se pu essere pi veloce le volte successive dato che, per il confronto, viene usata anche la cache del sistema operativo se disponibile.

"Shutdown at the end"
Permette di spegnere il PC al termine della sincronizzazione.

"Create folder if it does not exist"
Se la directory specificata come percorso di destinazione non esiste viene creata una cartella con quel nome.

"Add date to destination folder"
Aggiunge la data al percorso di destinazione, per cui x es."C:\CartellaDiDestinazione" diventa "C:\CartellaDiDestinazione 18-07-2004 22.30", questo pu essere utilizzato per creare dei BackUp temporizzati distinti tra loro.

"Copy only newer files"
Aggiorna un files in "Destinazioni" solamente se il file in "Origini"  pi recente.

"Adjust Path Drive"
Capita a volte che, quando si effettua la sincronizzazione con delle chiavette USB o altre periferiche rimuovibili, all'inserimento delle stesse la lettera dell'unit cambi. Se si seleziona questa opzione, il path viene automaticamente cambiato, se necessario, in modo da farlo corrispondere all'unit rimuovibile a cui faceva in origine riferimento (ci lo si ottiene memorizzando e confrontando i numeri di serie delle varie unit).

"Bidirectional syncronization"
Consente di sincronizzare le cartelle scegliendo i files pi recenti (sia che si trovino in Origine che in Destinazione).
Il risultato finale saranno quindi due cartelle identiche (Origine e Destinazione) contenenti ciascuna i files pi recenti che si siano trovati.

"Ignore path errors"
Se un dato percorso non esiste al momento della sincronizzazione si limita a saltarlo senza fermarsi per visualizzare un messaggio di errore, oltre a ci, questa opzione fa si che non venga effettuato il controllo dei permessi prima di sincronizzare un file, quindi  come se comprendesse l'opzione da linea di comando /NOSECURITYCHECK.
Se  attiva la sincronizzazione in tempo reale, i percorsi che non esistono vengono comunque periodicamente verificati e, nel caso si rendano nuovamente disponibili, viene subito attivata la sincronizzazione anche per loro.

"Real-Time Sync"
Consente di monitorare continuativamente (e a costo zero in termini di CPU) le modifiche avvenute nel percorso di origine e di replicarle di conseguenza nel percorso di destinazione.
Prima di attivare questa opzione  opportuno effettuare una sincronizzazione normale, infatti la funzione di questa opzione  quella di mantenere sincronizzate due cartelle identiche fin dall'inizio.

"Autostart"
Avvia il programma automaticamente all'avvio di Windows con le ultime opzioni salvate.
Se  impostata la sincronizzazione temporizzata essa verr eseguita all'orario specificato, altrimenti la sincronizzazione avverr immediatamente.

"Autostart as service"
Avvia il programma automaticamente all'avvio di Windows come servizio. E'possibile specificare l'account con il quale si vuole che il programma giri.
E' importante accertarsi che, con l'account specificato, il programma abbia i diritti di accesso sia per le cartelle di origine sia per quelle di destinazione.

"Preview"
Si limita a confrontare le cartelle senza effettuare le modifiche.

Le altre opzioni si capiscono da sole (spero).



PARAMETRI DELLA LINEA DI COMANDO
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Volendo  possibile specificare dei parametri nella linea di comando.

/START
Avvia immediatamente la sincronizzazione (con le ultime opzioni salvate).

/RETARD
Come la precedente, ma con una decina di secondi di ritardo (ci pu servire per consentire che il sistema finisca di caricarsi).

/MINIMIZE
Avvia DSynchronize minimizzato nella TrayBar.

/HIDDEN
Avvia DSynchronize in totale background e cio senza nemmeno visualizzare l'icona nella TrayBar.

/NOSECURITYCHECK
Prima di effettuare la sincronizzazione, non controlla se si possiedono o meno i permessi di lettura/scrittura sulle cartelle. Infatti, In qualche raro caso, sembra che il security check impedisca la sincronizzazione anche su cartelle sulle quali si possiedono tali permessi, per cui, selezionare l'opzione suddetta, consente di operare normalmente anche in quei particolari casi.

/NOMONITORCHECK
Avvia il programma anche se la risoluzione  inferiore a 1024x768.

/AUTOREALTIME
Avvia DSynchronize minimizzato, effettua una sincronizzazione standard e poi attiva la sincronizzazione in RealTime.

/NOMEFILE.INI
Utilizza uno specifico file INI per effettuare la sincronizzazione.
Ovviamente, al posto di NOMEFILE si pu specificare il nome che si vuole. E' necessario che il file INI si trovi nella stessa cartella di DSynchronize.



PROGRAMMATORE:
~~~~~~~~~~~~~~

Dimitrios Coutsoumbas (Dimio)
E-MAIL : cyberdimio@gmail.com
HOME   : http://dimio.altervista.org/



BETA TESTER:
~~~~~~~~~~~~
Umberto Barbella
E-MAIL : umbertob67@gmail.com



NOTE:
~~~~~
Il programma utilizza la tecnologia UPX (http://upx.sourceforge.net/) per aumentarne la portatilit.



LICENZA:
~~~~~~~~

Il programma viene distribuito con la licenza Freeware inclusa nel pacchetto e che pu essere cos sintetizzata: il programma pu essere liberamente utilizzato, distribuito e anche incorporato in progetti commerciali, l'unica cosa che non potete fare  decompilarlo o modificarlo.



NOTE SULLA SINCRONIZZAZIONE IN REAL-TIME
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

FUNZIONAMENTO:
Il programma monitorizza tutte le modifiche nel percorso di Origine e, ogni 10 secondi, replica le stesse modifiche nel percorso di Destinazione.
L'attesa dei 10 secondi ha lo scopo di evitare un inutile consumo di banda, infatti, se un file viene modificato per 2 volte nel giro dei 10 secondi, esso verr poi copiato una sola volta allo scadere dei 10 secondi, il che riduce di 2 volte il consumo di banda.

PERCORSO NON DISPONIBILE:
Se, quando si avvia la sincronizzazione in real-time un dato percorso (di origine o destinazione) non  disponibile, questo verr comunque verificato periodicamente e, qualora si rendesse nuovamente disponibile, anche per esso verr attivata la sincronizzazione in real-time.

POSSIBILI PROBLEMI:
E'normale che, durante la sincronizzazione in Real-Time, nella finestra dei log, alcune operazioni mostrino esito negativo (FAILED o LOCKED), ci non determina anomalie nella sincronizzazione.

In ogni caso si consiglia, se si utilizza questa opzione, di effettuare periodicamente anche delle sincronizzazioni normali.